home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Gamers Delight 2
/
Gamers Delight 2.iso
/
Aminet
/
game
/
misc
/
Mestertipp.lha
/
Mestertipp
/
MT.dok
< prev
next >
Wrap
Text File
|
1993-11-08
|
35KB
|
976 lines
MT.dok
******
Innhold
*******
1. Opphavsrett og distribusjon
2. Oversikt
3. Tekniske data
4. Minimumskrav
5. Installasjon
6. Bruk
6.1. Oppstart
6.2. Hovedmenyen
6.3. Informasjon om kupongen
6.4. Krav til rekkene
6.5. Tellemåte
6.6. Tell rekker
6.7. Vise rekker
6.8. Test rette
7. Utskrifter
8. Framtidige planer
9. Bugs
10. Snikreklame
1. Opphavsrett og distribusjon
******************************
Denne versjonen av Mestertipp er fritt distribuerbar, men opphavsretten
innehas av Tor Rune Skoglund i henhold til loven om opphavsrett. Dette
betyr at du kan kopiere denne versjonen fritt sammen med alle de andre
filene som følger med, men at du ikke kan endre noe i programmet.
This version of Mestertipp is freely distributable but copyrighted by Tor
Rune Skoglund according to Norwegian and international copyright laws.
Copyright (C) 1985-1993 Tor Rune Skoglund.
Hvis du vil ha neste versjon tilsendt gratis, send 1 diskett og et 5,50
kroners frimerke til adressen under. Du kan eventuelt sette inn 15 kroner
på postgirokonto 0803 4592374.
Tor Rune Skoglund
Linerleveien 7 B
N-7022 Trondheim
Norge
Internet e-mail: torrunes@idt.unit.no
Hvis du liker programmet eller har forslag til forbedringer og nye
muligheter, vil jeg selvsagt også sette pris på å bli fortalt om det.
Det er tillatt å distribuere dette programmet og dokumentasjonen på hvilken
som helst måte så lenge begge holdes samlet og selve teksten i
dokumentasjonen ikke endres. Pakk gjerne ilene med lha, lharc eller andre
pakkere hvis du ønsker det. I tillegg må programmet Onliner og Onliner.dok
følge med.
M.a.o. må følgende filer være med:
* MT - selve programmet
* MT.dok - dokumentasjonen til Mestertipp
* Onliner - program for å lage filer på Online-format
* Onliner.dok - dokumentasjonen til Onliner
* I tillegg eventuelle ikoner til disse filene.
Jeg vil forsøke å uploade neste versjon på Aminet, ftp.funet.fi og enkelte
BBS'er.
2. Oversikt
***********
OK, nok jalla. På tide å komme til poenget.
Hva pokker er Mestertipp? Forklaring kommer herved:
Mestertipp (MT) er et avansert tippesystem for fotballtipping. Det finnes
det jo nok av fra før, men dette er noe MER. Alle de dataprogrammer for
fotballtipping jeg har kommer over har stort sett hvert direkte
oversettelse av systemer som har blitt brukt i bokform inntil datamaskinen
gjorde sitt inntog. Altså har de brakt lite eller intet nytt inn når det
gjelder systemer.
Mestertipp er et første skritt på veien til å lage "The Ultimate System".
Programmet er LANGT FRA ferdig, dette er en MEGET ENKEL versjon (knapt det
engang :-), og alle mulighetene er ikke implementert eller gjort
tilgjengelige gjennom brukergrensesnittet. ("Brukergrensesnitt" - hvilket
brukergrensenitt??? Mer om det siden... :-)
Foreløpig er kun programmet beregnet for norske forhold, men det kan også
hånterer 13 kamper, slik som det benyttes i Sverige on Danmark. (Hva med
Finland - 12 eller 13 kamper?) I tillegg bruker vi rare nordmenn H, U og B
som tegn på kupongen, og ikke 1, X og 2 som de bruker i Sverige/Danmark.
Dette kan svensker og dansker kanskje leve med, men siden det heller ikke
finnes noen rutine for å skrive rekkene på filformat som benyttes på
svenske/danske Online-terminaler, er programmet kanskje litt begrenset for
disse.
Programmet er restene av en prosjektoppgave fra min tid ved Trondheim
Ingeniørhøgskole, og det var meningen å implementere programmet under
Windows og Amiga. Det ble med det siste... (Forresten, Windows er noe
skikkelig MØKK. HELE programmet må skrives for Windows, det er ikke nok å
'legge på' et brukergrensesnitt senere slik som det er naturlig på Amiga
og andre vindussystemer... Men nok om det.)
Programmet startet sin karriere på en gammel god traver, nemlig en VIC 20
(!) tilbake i ur-tiden 1985. Dog med hele 16K RAM ekstra, og 60% i ren og
herlig selvmodifiserende 6502 MC - those were the days...:-)
MT for Amiga er en utvided versjon med masse nytt (skulle bare mangle!),
men hovedprinsippene er fortsatt de samme. (Jeg kjenner faktisk til noen
som har brukt programmet pp VIC-20 inntil nylig! Det gikk nemlig an å
skrive ut på datakuponger med en Okimate 20 printer! (og KUN den!))
Nok om det. Hvordan fungerer MT?
Slik er "tippeprosessen", kort forklart:
1) Du har kupongen og vet litt (helst MYE!) om lagene.
2) Du setter opp dine tips og dine krav til rekker.
3) Du spesifiserer din redusjonsfaktor. (Garanti.)
4) Maskinen finner de rekkene som oppfyller dine krav.
5) Du går tilbake til 2) hvis det ble for mange rekker...
6) Du tipper de rekkene du har funnet.
7) Du taster inn resultatene.
8) Maskinen finner ut at du har vunnet 12 rette... :-)
Kort forklart og sterkt forenklet. I tillegg finnes det muligheter for å
lage garantitabell a la det du finner for 'vanlige' systemer, mm.
(Garantitabell er ikke implementert ennå.)
Slik foregår rekkeutvelgelsen:
+----------------+
531441 rekker: | HHHHHHHHHHHH |
| HHHHHHHHHHHU |
| HHHHHHHHHHHB |
| . |
| . |
| BBBBBBBBBBBB |
+----------------+
|
|
Dine krav til \ |
rekkene / ++++++++++ (Filteret her er f.eks sikker H
| i alle de 11 første kampene.)
|
|
+----------------+
Godkjente rekker: | HHHHHHHHHHH |
| HHHHHHHHHHU |
| HHHHHHHHHHB |
+----------------+
|
|
Reduksjon -> +++++++++ (Filteret her er minimumsgaranti
| 11 eller 10.)
+----------------+
Ferdige rekker: | HHHHHHHHHHH |
+----------------+
Dette skulle gi deg en ide om hvordan ting foregår.
Eksempelgjennomgangen lengre nede vil vise dette i praksis.
Andre spesielle features for MT er:
* Virtuelt minnesystem for rekkebufre. Du kan godt tippe 1000000 rekker
uten at systemet får problemer. (Derimot kan det bli problemer for din
egen lommebok...)
* Cache-system som finner nye rekker raskere hvis de nye rekkene kan bli et
subsett av tidligere genererte rekker.
* 12 eller 13 kamper. (Eller 1-2-3-4-5-6-7-8-9 for den saks skyld, men
akkurat det er ikke særlig nyttig.)
* Stort og stygt ikon :-)
3. Tekniske data
****************
* Skrevet i 99% generell C, 1% Amiga-spesifikt (mest filbehandling).
* Ca 15000 kildekodelinjer inkl. headerfiler og kommentarlinjer.
* Objektorientert konstruksjon og skrevet i objektorientert C, så langt det
er mulig...
* Kompilert med Lattice C V5.
* Finnes KUN til Amiga :-) Skitt au, programmet kunne gjerne vært
kompilert på en Intelprosessor med minimale forandringer, men Microsofts
egen C- kompilator klarte ikke å handtere 13 for-løkker inni hverandre...
Morsom feilmeldig fra kompilatoren: "Internal stack overflow". Som de
fleste vet, er hjelper ikke kommandoen "stack 1000000" så særlig mye på en segmentbasert Intel-chip.
* Krever endel minne: Ca 300K for å i det hele tatt starte opp. Har du ikke
nok minne er det dessverre ditt problem.
4. Minimumskrav
***************
* Amiga :-)
* Minimum 300 KB ledig minne, men jo mer desto bedre.
* Harddisk er ikke nødvendig, men generelt vil jeg så si at hvis du ikke
har harddisk så synes jeg synd på deg...
* Interesse for fotball og en viss forståelse for hva fotballtipping går ut
på.
* Kickstart/Workbench 2.0: Programmet virker med KS/WB 2.0 osv. Ikke testet
på 1.3, men sannsynligvis virker det der også.
5. Installasjon
***************
Kopier hele skuffen Mestertipp til din harddisk. Dette er hele
installasjonen som er nødvendig for selve programmet MT.
Hvis du skal bruke Onliner til å lagre rekkene på diskett for å levere til
kommisjonæren, må mer gjøres. Se Onliner.dok for dette.
6. Bruk
*******
Istedet for å vise hva hver enkelt meny brukes til, vil jeg vise en typisk
gjennomgang av en tippeprosedyre. Dette gjøres gjerne på lørdag formiddag,
slik at du kan følge med hvordan det går under tippekampen senere på dagen.
(Husk det ikke finnes noen lagringsmulighet ennå.... :-)
6.1. Oppstart
=============
Programmet kan startes fra et Shell eller fra Workbench. Hvis du starter
fra Workbench, vil vinduet som kommer opp være for lite. Gjør vinduet stort
nok til å se hele teksten.
På spørsmålet:
"Skriv inn path for v-mem (f.eks: dh0: ):"
skriver du inn harddiskpartisjonen som du ønsker å bruke som virtuelt
minne. Eksempler er: Work:, DH1:, osv. ':' må være med.
Neste spørsmål er:
"Hvor mange kamper på kupongen? (12 eller 13)"
Skriv inn 12 eller 13. I Norge vil det normalt være 12 kamper.
Deretter kommer du til hovedmenyen:
6.2. Hovedmenyen
================
Mestertipp: Amiga shell program v1.01a
----------------------------------------
Rekker lagret: 0
v) Vise rekker
i) Informasjon om kupongen (KUPINFO)
k) Krav til rekkene (KRAV)
t) Tellemåte (TELLINFO)
g) Garantitabell
s) Sjanse til premie
r) Test rette
m) Tell rekker
l) Lagre data
h) Hente data
q) Slutt
Det første du bør gjøre er å gå til "i) Informasjon om kupongen". Trykk i
og deretter RETURN.
6.3. Informasjon om kupongen
============================
Du får da fram denne menyen:
Info om kupongen (prosenttabell, utgangsrekke og nullerrekke)
-------------------------------------------------------------
Kamp %H %U %B E Utg Nul
1: 40 30 30 34.0 (H) (H)
2: 40 30 30 34.0 (H) (H)
3: 40 30 30 34.0 (H) (H)
4: 40 30 30 34.0 (H) (H)
5: 40 30 30 34.0 (H) (H)
6: 40 30 30 34.0 (H) (H)
7: 40 30 30 34.0 (H) (H)
8: 40 30 30 34.0 (H) (H)
9: 40 30 30 34.0 (H) (H)
10: 40 30 30 34.0 (H) (H)
11: 40 30 30 34.0 (H) (H)
12: 40 30 30 34.0 (H) (H)
Forventningsverdier:
4.8 3.6 3.6 408.0 0.0 0.0
Største sum: 480 Minste sum: 360
Antall utgangstegn: 0 Antall nullertegn: 0
f) Forandre prosentverdi
s) Standard oppsett for utgangs- og nullerrekke
u) Sett tegn av/på i utgangsrekke
i) Sett tegn i utgangsrekke
n) Sett tegn av/på i nullerrekke
m) Sett tegn i nullerrekke
z) Tilbake ...
Her har du alle kampene på kupongen. "%H", "%U" og "%B" er henholdsvis
prosentsjansen for hjemmeseier, uavgjort og borteseier. Her er det meningen
du skal skrive inn dine egne prosentsjanser. Dette gjør du med "f) Forandre
prosentverdi". Summen av prosentverdier må være enten 100 eller 99. 99 er
mulig siden det skal være mulig å angi 33 33 33 som prosenter på en helt
åpne kamp.
Hvordan finner du prosentene til en kamp? En enkelt og grei måte å bruke er
å tenke seg at lagene skulle ha spilt 10 kamper. Hvis du da f.eks tror
hjemmelaget vil vinne 4 eller 5 av disse, setter du prosenten på
hjemmeseier til 45.
Når man legger sammen den største verdien for prosent i hver enkelt kamp,
får vi verdien oppgitt etter "Største sum:". Når man legger sammen den
minste verdien for prosent i hver enkelt kamp, får vi verdien oppgitt etter
"Minste sum:". Dvs vil si at alle rekker som du kan kombinere vil gi en
`poengsum' som ligger mellom disse to summene. Du kan senere f.eks sette
opp at du vil tippe kun rekker som ligger innenfor et bestemt intervall av
poengsummer.
"E" angir forventningsverdien for hver enkelt kamp. Dersom dine oppgitte
prosentverdier for en kamp er `riktige', vil du i snitt få så mange poeng
på denne kampen som "E" viser.
"Forventningsverdier:" angir h.h.v. hvor mange hjemmeseiere, uavgjort og
borteseiere som du i snitt vil få med de oppgitte prosentverdiene. Disse
forventningsverdiene kan du for eksempel bruke når du skal sette opp
tegnfordelingskravene til rekkene.
Det neste tallet på linjen under "Forventningsverdier:" er
forventningsverdien for hvor mange poeng du vil få med de oppgitte
prosentverdiene. Du kan se på dette tallet som den mest `sannsynlige'
verdien du vil få på tippingen.
"Utg" viser utgangsrekka, og "Nul" viser nullerrekka. Utgangsrekka er den
mest sannsynlige rekka, mens nullerrekka er den minst sannsynlige rekka.
Normalt vil du sette hvert enkelt utgangstegn til den summen som er høyest
av %H, %U og %B, og motsatt for nullerrekka.
Etter at du har skrevet inn alle dine prosentverdier, kan du bruke s) til å
sette utgangsrekka og nullerrekka til standardverdier. Du kan selvsagt
forandre dem etterpå. Bruk i) og m) til dette.
Det er mulig å slå utgangstegn og nullertegn av og på. Med andre ord: Du
trenger ikke å ha utgangstegn og nullertegn på alle kampene. For eksempel
kan du la være å ha utgangstegn på kamper hvor utfallet er svært åpent.
Bruk henholdvis u) og n) for å slå tegn i utgangsrekka av og på. Tegn som
er av teller ikke med i utgangs/nullerrekka vil bli vist i parantes på
oversikten. "Antall utgangstegn:" og "Antall nullertegn:" viser hvor mange
tegn utgangs- og nullerrekka inneholder.
De to siste tallene på linjen under "Forventningsverdier:" viser h.h.v.
hvor mange forventningsverdien for antall utgangstegn og nullertegn. For
eksempel viser forventningsverdien for antall utgangstegn hvro mange
utgangstegn som du mest sannsynlig vil få.
For å forsette eksemplet, skriv inn prosentverdiene slik at tabellen blir
seende slik ut:
Info om kupongen (prosenttabell, utgangsrekke og nullerrekke)
-------------------------------------------------------------
Kamp %H %U %B E Utg Nul
1: 40 31 29 34.0 H B
2: 45 30 25 35.5 H B
3: 60 30 10 46.0 H B
4: 40 35 25 34.5 H B
5: 85 13 2 74.0 H B
6: 60 30 10 46.0 H B
7: 48 30 22 36.9 H B
8: 28 32 40 34.1 B H
9: 30 32 38 33.7 B H
10: 22 26 52 38.6 B H
11: 35 40 25 34.5 U B
12: 50 30 20 38.0 H B
Forventningsverdier:
5.4 3.6 3.0 485.8 6.0 2.5
Største sum: 598 Minste sum: 248
Antall utgangstegn: 12 Antall nullertegn: 12
Bruk z) til å returnere til hovedmenyen når du er ferdig med å skrive inn
alle prosentverdiene og når du har satt utgangsrekka og nullerrekka slik du
vil ha den.
6.4. Krav til rekkene
=====================
Du velger deretter "k) Krav til rekkene" på hovedmenyen og du får da fram
denne menyen:
Krav
----
k) Generelle krav
g) Gruppekrav
t) Tegnfordeling
a) Krav av/på
z) Tilbake ...
Velg her k) for generelle krav. Du får da fram følgende:
Generelle krav
--------------
Utgangstips: Max: 13 Min: 0
Nullertips: Max: 13 Min: 0
Tegn på rad: Max Min
H: 13 0
U: 13 0
B: 13 0
Poengsum: Max: 1300 Min: 0
100 % betyr IKKE sikker kamp.
0 % er lovlig tegn.
Garanti: 13
u) Utgangstips
n) Nullertips
t) Tegn på rad
p) Poengsum
1) 100 % == sikker kamp av/på
0) 0 % == ulovlig tegn av/på
g) Garanti
z) Tilbake
Generelle krav er de kravene til rekkene som beregnes på grunnlag av hele
kupongen. Vi begynner med det enkleste:
"Utgangstips:" angir hvor mange utgangstips rekkene du tipper skal ha. Du
setter minimum og maksimum utgangstips med u).
"Nullertips:" angir hvor mange nullertips rekkene du tipper skal ha. Du
setter minimum og maksimum utgangstips med n). Du har kanskje merket at du
ofte gjør en eller flere helbom på enkelte kamper når du tipper. Dermed kan
du for eksempel sette at rekke du tipper skal ha 1 til 3 (f.eks)
nullertips.
"Tegn på rad:" angir hvor mange tegn på rad av H, U og B som hver enkelt
rekke kan ha. Hvis du for eksempel vil tvinge hver rekke til å ha minst to
H'er etter hverandre, setter du minimum antall H på rad til 2. Minimum 1
betyr at alle rekkene som genereres må minst ha et tilfelle av det tegnet,
men dette kan også settes v.h.a tegnfordelig (vil bli forklart senere).
"Poengsum:" er kanskje det viktigste kravet du kan sette. Etter hvert som
du får litt erfaring, vil du kunne se hvor mange poeng du vansligvis kommer
til å få. Dermed kan du sette at alle rekkene du tipper skal ligge innen et
visst intervall av poeng. Du kan også bruke forventningsverdien for
poengsum som du kan lese på menyen for i) Informasjon om kupongen under
hovedmenyen. I snitt vil du sannsynligvis få poengsummer som ligger rundt
denne verdien.
"100% betyr (IKKE) sikker kamp." Selv om du setter enkelte kamper til
"100%" trenger ikke det å bety at alle rekkene som blir generert vil kun
ha dette tegnet. Dette forklares slik: La oss tenke oss at du har satt en
kamp til 100% på hjemmeseier og at "Største sum:" (under i) Infomasjon om
kupongen" er 600. Hvis du så setter minimum poensum til 450 betyr det at
du kan tape opptil 150 poeng. Dermed vil du kunne tippe rekker som
inneholder U og B i denne kampen. Dersom du ønsker å forhindre dette, kan
du bruke 1) til å sette at kamper med 100% kun skal ha det tegnet som er
satt til 100%. Dette vil også føre til kortene beregningstid.
"0% er (ULOVLIG) tegn." Samme prinsipp som for 100%-kamper forklart
ovenfor. 0) setter at ingen rekker med 0% for tegnet skal bli generert.
Dette kan for eksempel brukes til å lage ekte halvgarderinger. (Kamper
med prosentfordelig 50-50-0.) Hvis du setter dette, kan du få kortere
beregningstid for rekkene.
"Garanti:" er reduksjonsfilteret som er beskrevet kort i kapitlet
"Oversikt". Dersom alle kravene er oppfylt, er det garatien som bestemmer
hvor mange rette du er MINST garantert å få. For eksempel hvis du setter
garanti til 11, og alle kravene er oppfylt, vil du MINST få 1 11'er. (Du
har selvsagt også sjansen til 12.) I samme eksempel kan du likevel få 11
rette hvis kravene IKKE er helt oppfylt. Dette betyr i så fall at du ville
ha fått 12 HVIS kravene var oppfylt. Fordelen med å sette lavere garanti er
at du ikke trenger å ha så stramme krav. Funksjonen g) Garantitabell under
hovedmenyen viser hva sjansene er for å få 12, 11, 10 osv rette når. Denne
kan du bruke til å sette garantien til det nivå som passer deg.
(Garantitabell er ikke implementert ennå.)
Vi forsetter eksemplet. Sett de generelle kravene til følgende:
Generelle krav
--------------
Utgangstips: Max: 8 Min: 6
Nullertips: Max: 4 Min: 2
Tegn på rad: Max Min
H: 6 2
U: 3 0
B: 3 0
Poengsum: Max: 520 Min: 480
100 % betyr IKKE sikker kamp.
0 % er lovlig tegn.
Garanti: 10
Bruk så z) til å gå tilbake til forrige meny og velg t) Tegnfordeling. Du
får da opp denne menyen:
Tegnfordelinger
---------------
Det er i alt 91 forskjellige tegnfordelinger.
Av disse er 0 lovlige. TFKL gjelder for 12 kamper.
v) Vis alle lovlige
s) Slett tegnfordeling
n) Ny tegnfordeling
g) Generelle grenser
i) Ingen lovlige (sletter alle)
z) Tilbake
Som det står, er det 91 mulige tegnfordelinger med 12 kamper på kupongen.
Til å begynne med er ingen av disse lovlige. Bruk "g) Generelle grenser"
for å sette de generelle grensene for tegnfordelingene som skal være
lovlige.
Først får du spørsmål om hvor mange H som skal være lovlige. Skriv: 5 7
Skriv deretter 2 5 for U og til slutt 2 5 for B. Dette betyr at vi vil
tillate alle tegnfordelinger som har fra og med 5 til og med 7
hjemmeseiere, fra og med 2 til og med 4 uavgjorte og fra og med 2 til og
med 4 borteseiere.
Du vil nå se at det er 7 lovlige tegnfordelinger. Disse kan du liste opp
med "v) Vis alle lovlige".
I dette eksempelet ønsker vi å ha med to andre tegnfordelinger i tillegg,
nemlig: 4 5 3 og 4 4 4 . Bruk "n) Ny tegnfordeling" for å skrive inn disse
to. Skriv inn tallene med mellomrom mellom hvert av dem, altså først 4 5 3
og deretter n) på nytt og så 4 4 4.
Dermed skulle du ha 9 lovlige tegnfordelinger.
Dersom du ønsker å slette en tegnfordeling, kan du bruke "s) Slett
tegnfordeling".
"i) Ingen lovlige" sletter alle tegnfordelingene. Dette kan være nyttig å
gjøre hvis du skal sette generelle grenser på nytt.
Velg til slutt z) for å gå tilbake til forringe meny, og velg der "g)
Gruppekrav" for å få opp denne menyen:
Gruppekrav
----------
Antall gruppekrav: 0
Av: 0 Paa: 0
v) Vis alle
u) Vis nummer xx
s) Slett nummer xx
n) Nytt
a) Slå gruppekrav xx av/på
z) Tilbake
Gruppekrav er en type krav som ikke nødvendigvis angår alle kampene på
kupongen, men kun et utvalg av disse. For eksempel kan et gruppekrav være
at du skal ha minimum 3 hjemmeseiere av kampene 3, 4, 5, 8, 10 og 12.
Følgende kombinasjoner av gruppekrav er mulige:
H
Maksimum U
Minimum X antall B av kampene X1, X2, X3, ..., Xn.
utgangstips
nullertips
Et typisk gruppekrav er å sette at du skal ha maksimum (f.eks) tre
utgangstips av de fire mest sikre kampene rett. Bakgrunnen for dette kravet
er følgende: Etter at du har tippet endel vil du sikkert finne ut at du
sjelden vil klare å treffe på alle de fire (f.eks) mest sikre kampene, og
HVIS du likevel gjør det vil premiene bli svært lave siden også de fleste
andre tippere sannsynligvis har tippet disse kampene riktig. Da er det
kanskje bedre å satse på å få tre (f.eks) av disse kampene inn, og heller
få litt bedre premie.
De mest sikre kampene er de kampene som har høyest forventningsverdi. Disse
verdiene finner du under "i) Informasjon om kupongen" fra hovedmenyen.
Det finnes en utrolig mengde gruppekrav som du kan sette sammen.
Nye gruppekrav skrives inn med "n) Nytt". Bruk dette til å skrive inn
gruppekravene som er listet opp nedenfor. Når du får beskjed som å skrive
inn kampene, skriver du dem med mellomrom mellom hver kamp, og skriver 0
til slutt. Etter at gruppekravet er skrevet inn får du spørsmål om det skal
være av eller på. Skriv p for på. Ved beregning av rekkene vil kun krav som
er på bli tatt hensyn til.
Maksimum 4 utgangstips av kampene 3, 5, 6, 7, 12.
Minimum 3 utgangstips av kampene 3, 5, 6, 7, 12.
Minimum 2 utgangstips av kampene 3, 5, 6.
Maksimum 1 nullertips av kampene 3, 5, 6, 7, 12.
Bruk "v) Vis alle" til å liste opp alle gruppekrav. Bruk dette til å sjekke
at du har skrevet inn alle fire gruppekravene riktig.
Alle gruppekrav er nummerert fra 0 og oppover. "u) Vis nummer xx" lister
opp kun ett gruppekrav.
"s) Slett nummer xx" sletter gruppekravet som du skriver inn.
"a) Slå gruppekrav av/på" slår et gruppekrav av og på. Gruppekrav som er
slått av vil ikke bli tatt hensyn til ved beregning av rekkene. Det kan
være enklere å slå et gruppekrav av istedet for å slette det hvis du senere
ombestemmer deg og likevel vil ha det med.
"z) Tilbake" går tilbake til forrige Krav-menyen.
Velg "a) Krav av/på" under Krav-menuen. Du får da fram følgende liste:
Krav av/på
----------
Alle kravtyper i parantes er slått av. Alle kravtyper som er slått
av, vil ikke bli tatt hensyn til ved telling.
0: Min utgangstips
1: Max utgangstips
2: Min nullertips
3: Max nullertips
4: Tegnfordeling
5: Min på rad
6: Max på rad
7: Gruppekrav
8: Min poengsum
9: Max poengsum
10: '100 prosent'
11: '0 prosent'
12: Garanti
Skriv nummeret til kravtypen du vil ha slått av/på
(-1 for tilbake) :
Som denne menyen viser, er det mulig å slå hele beregningskrav av og på.
For eksempel, hvis du skriver 4, vil "Tegnfordeling" bli opplistet i
parantes. Dette betyr at kravene du har skrevet inn for tegnfordeling ikke
vil bli tatt hensyn til ved beregning av rekkene. Med andre ord: Alle
tegnfordelinger er mulige.
La alle kravtypene stå på og skriv -1 for å gå tilbake til forrige meny.
Vi er da ferdige med å sette opp alle kravene til rekkene. Bruk z) til å
gå tilbake til hovedmenyen.
6.5. Tellemåte
==============
Fra hovedmenyen, velg "t) Tellemåte". Følgende meny kommer fram:
Tellemåte
---------
Tellemåte: Fullstendig gjennomgang
Stopp ved -1 rekker. (Må være > 0 dersom 'tilfeldig' tellemåte.)
Lagre rekker: JA (Må være JA hvis garanti<12 eller 'tilfeldig' tellemåte.)
Like rekker ok: NEI (Kun aktuelt hvis garanti=12/13 og 'tilfeldig'
tellemåte.)
Forkastetoversikt: NEI (JA kan gi vesentlig lengre telletid.)
v) Vis forkastetoversikt
t) Forandre tellemåte
s) Sett stopp ved xx rekker
l) Lagre rekker av/på
r) Like rekker ok av/på
f) Forkastetoversikt av/på
z) Tilbake
"s) Sett stopp ved xx rekker": Det er mulig å få beregningsrutinen til å
avbrykte en beregning når et visst antall rekker er funnet. Dette antallet
setter du med s).
Det er to måter å beregne rekkene på. "t) Forandre tellemåte" bytter mellom
disse to. Tellemåtene er disse to:
1) Fullstendig gjennomgang: Med denne tellemåten vil absolutt alle rekkene
som oppfyller alle kravene bli bregenet. Vanligvis er det denne
tellemåten som du bør benytte hvis du tipper for `endel' penger...
2) Tilfeldig trekning: Istedet for å gå igjennom alle rekkene, kan
beregningsrutinen finne noen tilfeldig valgte rekker som oppfyller
kravene. Dette vil føre til større spredning på rekkene, og kan være
greit å bruke hvis du ikke tipper for altfor mange kroner. Merk
imidlertid at du IKKE vil være garantert å få den minimumgarantien som
du har satt under "Generelle krav" på grunn av måten denne tellemåten
virker på. Hvis du skal benytte denne tellemåten må du først sette når
beregningen skal avbrytes. Dette settes med s) som forklart ovenfor.
"l) Lagre rekker" betyr at programmet intert vil ta vare på de rekkene som
genereres under beregningen av dem. Hvis du setter denne til NEI, hvis kun
antallet rekker som oppfyller alle kravene bli funnet. Merk at hvis du har
satt garanti til mindre enn antall kamper på kupongen, MÅ rekkene lagres.
Dette gjelder også hvis du bruker tellemåten tilfeldig trekning. Den eneste
nytten du kan ha av å ikke lagre rekkene mest de beregnes er sannsynligvis
hvis du har lite minne og har lyst til å finne HVOR MANGE rekker som har
måttet blitt tippet for å få 12/13 rette.
"r) Like rekker ok av/på" setter om det skal være tillatt å generere like
rekker. Dette er kun mulig hvis tellemåten er tilfeldig trekning og
garantier er satt lik antallet kamper på kupongen.
"f) Forkastetoversikt av/på" slår forkastetoversiktet av og på. Etter en
beregning som er gjort med forkastetoversikten på, kan du bruke "v) Vis
forkastetoversikt" til å få listet opp hva som gjorde at rekkene IKKE
oppfylte kravene. Summen av rekker som blir opplistet kan være større enn
antallet rekker som ble forkastet. Dette skyldes at en rekke ofte ikke har
tilfredsstilt flere av kravene. Kravet om garanti er litt spesielt: Rekkene
blir kun testet mot garantikravet dersom de allerede har oppfylt alle de
andre kravene. Med forkastetoversikten på kan det ta vesentlig lengre tid å
beregne rekkene.
For vårt eksempel, la alle verdiene stå som de står, dvs:
Tellemåte
---------
Tellemåte: Fullstendig gjennomgang
Stopp ved -1 rekker. (Må være > 0 dersom 'tilfeldig' tellemåte.)
Lagre rekker: JA (Må være JA hvis garanti<12 eller 'tilfeldig' tellemåte.)
Like rekker ok: NEI (Kun aktuelt hvis garanti=12/13 og 'tilfeldig'
tellemåte.)
Forkastetoversikt: NEI (JA kan gi vesentlig lengre telletid.)
Bruk z) til å gå tilbake til hovedmenyen.
6.6. Tell rekker
================
Fra hovedmenyen, bruk "m) Tell rekker" for å beregne rekkene.
Beregningen av rekkene tar en god del tid, dette avhenger av hvor rask din
maskin er. På en 68000-basert A2000 eller A500 kan nok tiden bli i lengste
laget...
Hold ned CTRL og C for å avbryte tellingen.
Når tellingen er ferdig vl vil "Rekker lagret: 626" vise hvor mange rekker
som ble funnet. Hvis du har skrevet inn alt som det har vært vist under
gjennomgangen her, vil du få 626 rekker.
Hvis du ikke er fornøyd med dette (kanskje det ble for mange eller for få
rekker), kan du gi inn og stramme eller slakke på kravene og deretter telle
på nytt. Forsett slik til du har fått det antallet rekker som du er fornøyd
med.
6.7. Vise rekker
================
Fra hovedmenyen, velg "v) Vise rekker" for å se på rekkene. Du får da opp
følgende meny.
v) Vise rekker
--------------
Det finnes 626 rekker i rekkelageret
a) Alle rekkene
f) Fra rekke xx til rekke yy
o) Lagre rekker på fil i Online format
z) Hovedmeny
"a) Alle rekkene" lister opp alle rekkene på skjermen. Rekkene er nummerert
startende på 0.
"f) Fra rekke xx til rekke yy" lister kun opp de rekkene som ligger mellom
de grensene du angir.
"o) Lagre rekker på fil i Online format" lagrer rekkene på en fil som du
kan ta med på diskett til en Norsk Tipping kommisjonær med mulighet til å
overføre rekker fra diskett. Dette er forøvrig den eneste måten å få lagret
skrevet ut rekkene på, foreløpig. Dersom det er et stort ønske om å lage
rutiner for utskrift på datakuponger, vil jeg vurdere å gjøre det.
Imidlertid håper jeg å slippe, det er endel annet som jeg også skulle ha
brukt mer tid på.
Trykk o) for å lagre rekkene på diskett. Først må du ha installert
programmet Onliner, som blir brukt til å lage Online-format på disketten.
Les Onliner.dok for hvordan dette programmet installeres. Her står det også
beskrevet hva slags filnavn som er lovlige for Online-filer.
Etter at du har laget Online-fil, tar du disketten med til
Tippe-kommisjonæren og leverer inn denne. Der vil rekkene bli overført
direkte til Norsk Tipping i Hamar. Dette kan du vanligvis gjøre fram til
klokka 14.30 på lørdager, men dette kan variere.
Bruk z) til å gå tilbake til hovedmenyen.
Når kampene er ferdigspilt, kan du teste hvor mange rette du fikk. Det er
også spennenede å følge med under kampen hvordan du ligger an!
6.8. Test rette
===============
Velg "r) Test rette" fra hovedmenyen for å teste antall rette. Du får da
fram følgende meny:
Test rette
----------
a) Kun antall rette
b) Antall og rekkenummer
z) Tilbake
"a) Kun antall rette" er en rask og enkel funksjon for å kun finne hvor
mange rette rekkene gav. Du får først spørsmål om å skrive inn den rette
rekka. Denne skriver du med h, u og b uten mellomrom. Skriv f.eks følgende:
uhbbhhhubbhh
Du får da fram følgende oversikt som viser hvor mange rekker som hadde et
visst antall rette:
Rette Antall rekker
12 0
11 1
10 2
9 12
8 39
7 77
6 134
5 176
4 123
3 54
2 8
1 0
0 0
Her ser vi blant annet at det var 0 rekker med 12 rette, men 1 rekke med 11
rette og 2 med 10.
"b) Antall og rekkenummer" er en litt mer avansert funksjon. Her kan du i
tillegg få listet opp HVILKE rekker som har et visst antall rette, samt å
benytte ? istedet for h, u eller b for kamper som du ikke vet utfallet av
ennå. Oversikten over antall rette vil da bare gjelde de kamper som du har
skrevet h, u eller b på. Dette kan være nyttig hvis noen av kampene spilles
på et annet tidspunkt, og du vil vite hvor mange rette du har av de kampene
som allerede er spilt.
Velg b) og skriv for eksempel inn følgende rekke: ???bhhhubbhh
Deretter får du spørsmål om "Fra antall rette:". Skriv her det minste
antallet rette du vil ha rapportert, f.eks 6. På "til anatall rette:"
skriver du det maksimum antall rette du vil ha rapportert. Her kan du
skrive 9, siden vi kun har skrevet inn 9 tegn. Du vil deretter få listet
opp hvor mange rekker som har fra 6 til 9 rette (av de 9 tegnene du har
skrevet inn):
Rette Antall rekker
9 0
8 7
7 27
6 85
Siden det var tre kamper som ikke var angitt, betyr det at du har sjansen
til maksimum 11 rette. Du kan få listet opp disse rekkene ved å svare j på
spørsmålet "Vise rekkene & nr for et bestemt antall rette? (j/n)" Skriv
deretter 8 på det neste spørsmålet og alle rekkene som har 8 rette av de 9
kampene vil bli listet opp, samt deres nummer.
Skriv deretter n for å gå tilbake til "Test rette" menyen, og z) for å gå
tilbake til hovedmenyen.
De andre valgmulighetene på hovedmenyen som vi ikke har gjennomgått til nå
er ikke implementert ennå.
Velg "q) Slutt" for å gå ut av programmet.
7. Utskrifter
*************
Foreløpig kan man ikke få papirutskrift på en enkelt måte. Du kan likevel
ta en kopi av kuponginfoen og kravene på skriveren hvis du har Kickstart
og Workbench 2.0.
Åpne et Shell-vindu og skriv der "copy * to prt:". `*' står for stardard
input. Merk teksten du vil ha ut på skriver med musa og bruk høyre Amiga og
C for å legge denne på klipperbordet. Deretter aktiviserer du
Shell-vinduet, og trykker høyre Amiga og V for å `lime' teksten inn i dette
vinduet.
Gjenta denne framgangsmåten til du har fått skrevet ut alle de data du
trenger.
Lagring av data på fil vil bli implementert så snart jeg får tid til det.
Dessverre betyr det at det nok kan gå en stund...
8. Framtidige planer
********************
* Lage en rutine som skriver ut rekkene på fil i OnLine-format. Dette har
top-pri. Jeg får vel gjort det i løpet av høsten... :-) (Dette er nå
gjort programmet Onliner fikser dette. LES ONLINER.DOK!)
* Oversette til C++ og gå over til GCC. (Like godt å gjøre det først som
sist.) Eller kanskje SAS C++?
* Definere og implementere lagring av data. (En IFF-standard for
tipping....? Hvorfor ikke!?!) Dette punktet har høy prioritet.
* Lage en ARexx-port, og gjøre beregningsprogrammet til en ren ARexx
server.
* Lage et pent og vakkert brukergrensesnitt som genererer ARexx-meldinger.
Har ikke bestemt meg om jeg skal bruke CanDo eller MUI... MUI ser jo
UTROLIG vakkert ut, men skulle skulle gjerne hatt en visuell editor.
* En masse nye krav-typer og mulighet for flere prosenttabeller.
* Bedre algoritme for rekketesting. (Har et par ideer...) Kanskje MC her.
* Rekke-evaluering av maskinen, dvs at programmet tester hvor "gode"
rekkene dine er i forhold til prosenttabellen.
* MS-DOG versjon. (Hvis jeg finner en kompilator som _virker_!)
* Windows version. (Dette er ikke noe jeg akkurat ser fram til, men pokker
så mange PC'er det finnes derute! I alle fall ligger dette nederst på
prioritetlista...)
* Fjerne aøllle skriverfeill i dennen dokumentasjonenr :-) og lage TexInfo/
AmigaGuide format, samt _bedre_ dok.
* Lokalisering for Sverige, Danmark og Finland. Støtte for disse landenes
Online-formater og tippetegn.
* Gi ut en kommersiell versjon eller som shareware? Hva synes DU?
* Implementere programmet på parallellmaskinen "Kubben" ved IDT.... :-)
9. Bugs
*******
What should you do without 'em...
* Skriv ikke inn tekst når tall-input forventes! Det er noen problemer med
Lattices scanf-funsjon.
* EOF ved input kan føre til at programmer går i evig løkke. (Tror jeg har
fikset dette de fleste steder.)
* Cache-systemet ser ut til å bomme noen ganger.... Ikke noe farlig,
beregningen vil bare kunne ta 1-10 ganger lengre tid enn den kanskje
ville ha gjort. Ærlig talt så vet jeg ikke om dette er en bug heller, men
jeg syens det har oppført seg litt uventet noen ganger.
* MT's virtuelle minnesystem lager filer på harddisken som ikke blir
fjernet hvis programmet stopper på en 'unormal' måte. Du må slette disse
manuelt, og de skiller seg godt ut, for å si det slik.
* Det virtuelle minnesystemet defaultler til DH0:, hvs som vil skje hvis du
ikke har DH0: vet jeg ikke. Jeg har faktisk ikke testet det. Men et sted
i koden finnes det et kall for å sette stien til hvor disse filene skal
lagres - skitt det hadde vært kjapt å endre MT slik at man kinne sette
slikt fra brukergrensesnitt.... Vent på neste versjon... (Dette er nå
gjort.)
10. Snikreklame
***************
På jakt etter billig Amiga-utstyr? Prøv DataKompaniet ANS i Trondheim! :-)